import {getTopMV} from '../../service/api_video'

// pages/home-video/index.js
Page({

  /**
   * 页面的初始数据
   */
  data: {
    topMVs: [],
    hasMore:true
  },

  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: async function (options) {
    this.getTopMVData(0)
  },

  //封装网络请求方法
  getTopMVData:async function(offset){
    //判断是否可以请求
    if(!this.data.hasMore && offset !== 0) return

    //展示加载动画
    wx.showNavigationBarLoading()

    //真正请求数据
    const res =await getTopMV(offset)
    let newData = this.data.topMVs
    if(offset === 0 ){
      newData = res.data
    }else{
      newData = newData.concat(res.data)
    }

    //设置数据
    this.setData({topMVs: res.data})
    this.setData({hasMore: this.hasMore})
    wx.hideNavigationBarLoading()
    if(offset === 0 ){
      wx.stopPullDownRefresh()
    }
  },

  //封装事件监听的方法
  handleVideoClick: function(event){
    //获取id
    const id = event.currentTarget.dataset.item.id
    //页面跳转
    wx.navigateTo({
      url: '/pages/detail-video/index?id=' + id,
    })
  },

  // 下拉刷新
  async onPullDownRefresh() {
    this.setData({ hasMore: true })
    this.getTopMVData(0)
  },

  // 触底 上拉加载更多
  async onReachBottom() {
    // 没有更多了
    if (!this.data.hasMore) {
      return wx.showToast({
        title: "没有更多了~",
        icon: 'none',
        duration: 1000
      })
    }
    wx.showLoading({
      title: '加载中',
    })
    const res = await getTopMv(this.data.topMvs.length)
    this.setData({ topMvs: this.data.topMvs.concat(res.data) })
    this.setData({ hasMore: res.hasMore })

    wx.hideLoading()
  },


})